package com.company.cloud.user.modules.mgr.controller.req;

import java.util.Set;

import javax.validation.constraints.NotEmpty;

import com.company.cloud.common.bean.BaseParam;
import com.company.cloud.common.constant.BaseConstant.YNEnum;
import com.company.cloud.user.constant.UserConstant;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class PermissionSaveParam extends BaseParam {

	@ApiModelProperty(value = "权限编号" ,required = true)
	@NotEmpty(message = "编号不能为空")
	private String code;

	@ApiModelProperty(value = "权限分类（普通/菜单/按钮）",required = true)
	@NotEmpty(message = "分类不能为空")
	private String type;

	@ApiModelProperty(value = "权限名称",required = true)
	@NotEmpty(message = "名称不能为空")
	private String name;

	@ApiModelProperty(value = "菜单显示名称")
	private String showName;

	@ApiModelProperty(value = "菜单显示图标")
	private String icon;

	@ApiModelProperty(value = "菜单路由")
	private String url;

	@ApiModelProperty(value = "菜单状态" ,required = true)
	@NotEmpty(message = "状态不能为空")
	private String state=YNEnum.YES.getCode();

	@ApiModelProperty(value = "菜单顺序")
	private Integer orders=0;

	@ApiModelProperty(value = "菜单显示平台")
	private String showPlatform;

	@ApiModelProperty(value = "备注")
	private String remark;

	@ApiModelProperty(value = "资源")
	private  Set<String> resource;

	@ApiModelProperty(value = "上级权限编号",required = true)
	@NotEmpty(message = "上级编号不能为空")
	private String parentCode=UserConstant.PERMISSION_TOP_CODE;

}
